package com.xs.designpattern;

import lombok.RequiredArgsConstructor;

/**
 * 这是一个具体的叶子节点，代表一个字母。
 * 它继承自 LetterComposite 类，实现了字母的打印。
 * @author xs
 */
@RequiredArgsConstructor
public class Letter extends LetterComposite {
    /**
     * 属性表示字母本身，通过构造函数传入
     */
    private final char character;

    /**
     * 方法被覆写，用于在打印字母前打印字母本身
     */
    @Override
    protected void printThisBefore() {
        System.out.print(character);
    }
}
